1. Field of the Invention
The present invention relates to a picture-drawing method and apparatus based upon a computer graphics (CG), and a recording medium, and more particularly to a picture-drawing method and apparatus, and a recording medium which are designed to readily and quickly provide a three-dimensional feeling to a diffuse reflection surface of an object so that they are suitably applicable to games.
2. Description of the Related Art
One of the problems with a picture created through the use of a CG technique is the lack of a three-dimensional feeling on a diffuse reflection surface (surface with less gloss). The principal reason why a human body drawn through the use of the CG looks unnaturally is that the skin of a human being constitutes a diffuse reflection surface.
It has been known that the factor to generate a three-dimensional feeling for the diffuse reflection surface is indirect reflected light (reflection) from a wall or floor (which will be referred hereinafter to as a ground surface. Since many picture-drawing algorithms do not take the indirect reflection into consideration, difficulty may be encountered to create a three-dimensional feeling on a diffuse reflection surface.
Although some picture-drawing algorithms, which give consideration to the indirect reflection, have been known as will be mentioned hereinbelow, they take a longer calculation time as compared with the picture-drawing algorithms not taking the indirect reflection into consideration, and hence, for example, difficulty may be experienced to apply them to the fields, such as games, where the real time is a significant factor.
(1) Prior Method Employed for Games without Considering Indirect Reflection
This prior method considers only one reflection on a surface of an object, and determines a diffuse and specular reflection in accordance with only the positional relationship between the surface and a light source, where the ambient light is treated as being constant. With this method, the three-dimensional feeling on the diffuse reflection surface is poor because of not taking the indirect reflection into consideration, but the processing speed is high to reduce the necessary memory.
(2) Ray Tracing
This algorithm is made to recursively trace the specular reflection on an object surface and the transmission through the interior of the object. This algorithm produces a relatively good result in a transparent body and a glossy surface, but provides a poor three-dimensional feeling. In addition, the processing speed is low and a considerably large scale of trace stack is necessary. In general, this algorithm is for producing a picture to be used for a commercial film or a picture to be recorded in an external storage such as a compact disk. As the picture on the compact disk there is used a picture previously processed without being processed in the real time.
(3) Radiosity
This algorithm regards an object surface as a light source and solves simultaneous equations describing an equilibrium condition of its interaction. Since this algorithm directly deals with the indirect reflection, a diffuse reflection surface with a three-dimensional feeling is obtainable. However, the picture-drawing speed becomes extremely low because of solving a large-scale of simultaneous equation, and a large amount of memory capacity is inevitable. Accordingly, this algorithm is not suitable for home-use games based upon a personal computer and requires an extremely long time for the picture-drawing processing. For this reason, this algorithm is actually for the business purposes., such as the simulation for a well-lighted room.
(4) Environment Mapping
The elements of an indirect reflection are stored as picture data so that the paste of an object surface reflection image takes place through the environment mapping technique. The use of a texture considering the indirect reflection allows a diffuse reflection surface with a three-dimensional feeling to be expressible. Since this algorithm is relatively simple, its processing speed is high, but a large-volume memory is necessary because of the use of the texture.
Meanwhile, of the light striking on an object, the light once reflected on a ground surface after emitted from a light source is referred to as indirect reflection (indirect reflected light), and this indirect reflection features the incidence from a variety of directions whereas the light from a common light source is incident from a specific direction. This is because the indirect reflection is composed of the diffuse reflection on a wide reflection surface such as a ground surface.
A further description will be made hereinbelow with reference to FIGS. 2A to 2E. FIGS. 2A to 2E are illustrations of the states where light from a light source is applied to a spherical object 1 from an upper left-hand direction. In cases where the indirect reflection from a ground surface strikes on the object 1, a specular reflection effect, which does not largely take place in the case of a common light source, develops on an extremely wide surface. This specular reflection effect signifies the development of the color of the light source. Since this effect only partially takes place in the case of the employment of a common light source, the highlight, that is, the portion developing the color of the light source, only appears in a small area, whereas the object the indirect reflection strikes on develops the color of the light source over a wide range to turn to a dim or mat color. The dim color means the mixture of the color of the object 1 and the color of the reflection (light source). Accordingly, of the surface of the spherical body, a partial surface 3 facing the ground surface displays the dim color (see FIG. 2B). FIG. 2B illustrates a real picture but not showing a picture based upon the CG.
This dim color is not expressible through the use of a prior algorithm considering only light coming from a specific direction. That is, the surface 3 on the side opposite to the light source is merely shaded with only block (see FIG. 2E). In FIGS. 2A to 2E, numeral 2 denotes a highlight formed on a surface being in opposed relation to the light source.
One possible solution to this problem seems to be additionally placing a light source on the ground surface side for the application of ordinary light thereto. However, even if the ordinary light is applied thereto from the ground surface side, difficulty is experienced to offer a dim color on the surface 3 of the object 1. What's worse, an unnatural highlight 4 appears (see FIG. 2D).
As mentioned before, the use of only the surface light source causes the opposite side surface to be dark while the addition of the light source makes the unnatural highlight. Thus, it may be considered to employ ambient light serving as a light source to exert the diffuse reflection effect at a constant degree over the entire surface for displaying the color of the object. However, if relying upon this ambient light, the dim color is still unobtainable (see FIG. 2C) although an improvement shows in that the surface 3 of the object 1 facing the ground surface becomes somewhat bright.
Particularly, in the prior simple algorithms, consideration is not given to that the color development of an object is made only with the color of a light source in the case of the use of a point light source or ambient light as the light source, the color development of the object depends upon both the properties of the light source and object, and hence, difficulty is encountered to display the dim color because of being subject to the influence of the property or nature of the object, so that the lack of the three-dimensional feeling occurs.